#!/bin/bash

#============================================
# 数组定义
# 格式：
# 数组名=(值1 值2 ... 值n)
# 参考：https://www.runoob.com/linux/linux-shell-array.html
#============================================

echo '--------------------定义索引数组--------------------'
arrName=('ouyang' 'vsiryxm' 'simon' 'yang') #元素下标从0开始，元素用空格隔开
echo "一次输出数组arrName: ${arrName[*]}" #输出所有元素，也可以用@代替*

myName=${arrName[0]} #访问单个元素
echo "访问数组元素arrName[0]: $myName"
num=1
echo "访问数组元素arrName[${num}]: ${arrName[num]}"

arrCity=( #元素也可以一行写一个，分行写
    'suzhou'
    'shanghai'
    'changsha'
    'beijing'
)

# 遍历数组
echo '遍历arrCity结果: '
for city in ${arrCity[*]}
do
    echo $city
done

# 统计数组元素个数
echo "arrCity数组的长度是: ${#arrCity[*]}"

echo '--------------------定义关联数组--------------------'
declare -A myInfo
myInfo["name"]="海阳之新"
myInfo['sex']="男"
var="age"
myInfo[${var}]=18 #使用变量来表示元素
myInfo[home]="新化" #数组下标可带/可不带单双引号

echo ${myInfo["name"]};
echo ${myInfo['sex']};
echo ${myInfo[age]};
echo ${myInfo[home]};
